﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using System.Data.SqlClient;

namespace AccesoBD
{
    public class AtencionesExternas
    {
        public List<Medico> obtenerMedicoGuardia(int diaActual)
        {
            SqlConnection conexion = DB.Conectar();
            List<Medico> lista = null;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT MedicoXEspecialidad.legajo, Persona.apellido, Persona.nombre"
                                                   + " FROM Persona INNER JOIN Medico ON Persona.codPersona = Medico.codPersona INNER JOIN HorarioAtencionXMedicoXEspecialidad INNER JOIN MedicoXEspecialidad ON HorarioAtencionXMedicoXEspecialidad.legajo = MedicoXEspecialidad.legajo AND HorarioAtencionXMedicoXEspecialidad.codEspecialidad = MedicoXEspecialidad.codEspecialidad ON Medico.legajo = MedicoXEspecialidad.legajo"
                                                    + " WHERE (MedicoXEspecialidad.codEspecialidad = 10) AND (HorarioAtencionXMedicoXEspecialidad.diaSemana = @diaActual)", conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@diaActual", diaActual));
                SqlDataReader dr = sqlcmd.ExecuteReader();

                lista = new List<Medico>();
                while (dr.Read())
                {
                    Medico e = new Medico();
                    e.Legajo = int.Parse(dr["legajo"].ToString());
                    e.ApellidoNombre = dr["apellido"].ToString() + " " + dr["nombre"].ToString();
                    lista.Add(e);

                    e = null;
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return lista;
        }

        public List<Afiliacion> obtenerAfiliado(int tipoDoc, int nroDoc)
        {
            SqlConnection conexion = DB.Conectar();
            List<Afiliacion> lista = null;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT Afiliado.nroHCpaciente,  Persona.nombre, Persona.apellido, Afiliado.nroAfiliado, "
                                                           + "Domicilio.calle, Domicilio.numero, Domicilio.piso, Domicilio.departamento, "
                                                            + "Barrio.nombre AS Barrio, Persona.telefono"
                                                    + " FROM Afiliado INNER JOIN Persona ON Afiliado.idPersonaPaciente = Persona.codPersona "
                                                            + " INNER JOIN Paciente ON Afiliado.nroHCpaciente = Paciente.nroHC AND "
                                                            + "Afiliado.idPersonaPaciente = Paciente.idPersona AND Afiliado.nroAfiliado = "
                                                            + "Paciente.nroAfiliado AND Persona.codPersona = Paciente.idPersona INNER JOIN "
                                                            + " Domicilio ON Paciente.idDomicilio = Domicilio.idDomicilio INNER JOIN "
                                                            + " Barrio ON Domicilio.idBarrio = Barrio.idBarrio "
                                                    + "WHERE  Persona.tipoDocumento = @tipoDoc AND Persona.nroDocumento = @nroDoc", conexion);

                sqlcmd.Parameters.Add(new SqlParameter("@tipoDoc", tipoDoc));
                sqlcmd.Parameters.Add(new SqlParameter("@nroDoc", nroDoc));
                SqlDataReader dr = sqlcmd.ExecuteReader();

                lista = new List<Afiliacion>();

                while (dr.Read())
                {
                    Afiliacion e = new Afiliacion();

                    e.nroHC = Convert.ToInt32(dr["nroHCPaciente"].ToString());
                    e.nombreApellidoAF = dr["nombre"].ToString() + " " + dr["apellido"].ToString();
                    e.nroAfiliado = Convert.ToInt32(dr["nroAfiliado"].ToString());
                    //e.esAdherente = bool.Parse(dr["esAdherente"].ToString());
                    //if (dr["nroAfiliadoTitular"] != DBNull.Value)
                    //{
                    //    e.nroAfiliadoTitular = Convert.ToInt32(dr["nroAfiliadoTitular"].ToString());
                    //}
                    //else
                    //{
                    //    e.nroAfiliadoTitular = 0;
                    //}
                    //e.nombreApellidoTIT = dr["nomTitular"].ToString() + " " + dr["apeTitular"].ToString();
                    e.domicilio = dr["calle"].ToString() + " " + dr["numero"].ToString() + " " + dr["piso"].ToString() + " " + dr["departamento"].ToString();
                    e.barrio = dr["barrio"].ToString();
                    if (dr["telefono"] != DBNull.Value)
                    {
                        e.telefono = Convert.ToInt64(dr["telefono"].ToString());
                    }
                    else
                    {
                        e.telefono = 0;
                    }


                    lista.Add(e);

                    e = null;
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return lista;
        }




        public bool registrarAtencionExternaAfiliado(String tipoEoU, DateTime fechaHora, int nroAfiliado, string motivo, int legajoMedicoGuardia, int codEspMedico, string observaciones, int idEstadoAtencion)
        {

            int orden = 0;
            string nom = "";

            if (tipoEoU == "Emergencia")
            {

                orden = nroOrdenEmergencia(nom);
                orden++;
            }
            else
            {
                incrementaNroOrden();
                orden = 1;


            }

            int res = -20;
            SqlConnection conexion = DB.Conectar();
            try
            {
                SqlCommand sqlcmd = new SqlCommand("INSERT INTO Atencion_Externa(fechaHora, nroAfiliado,nroOrden, motivo, legajoMedicoGuardia, codEspecialidadMedicoGuardia, observaciones, idEstadoAtencion) VALUES (@fechaHora, @nroAfiliado, @nroorden, @motivo, @legajoMedicoGuardia, @codEspMedico, @observaciones, @idEstadoAtencion)", conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@fechaHora", fechaHora));
                sqlcmd.Parameters.Add(new SqlParameter("@nroAfiliado", nroAfiliado));
                sqlcmd.Parameters.Add(new SqlParameter("@nroOrden", orden));
                sqlcmd.Parameters.Add(new SqlParameter("@motivo", motivo));
                sqlcmd.Parameters.Add(new SqlParameter("@legajoMedicoGuardia", legajoMedicoGuardia));
                sqlcmd.Parameters.Add(new SqlParameter("@codEspMedico", codEspMedico));
                sqlcmd.Parameters.Add(new SqlParameter("@observaciones", observaciones));
                sqlcmd.Parameters.Add(new SqlParameter("@idEstadoAtencion", idEstadoAtencion));

                res = sqlcmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            { throw ex; }
            finally
            {
                conexion.Close();
            }
            if (res > 0)
                return true;
            else
                return false;

        }

        public int legajoMedicoGuardia(string apellido, string nombre)
        {
            int id = 0;
            SqlConnection conexion = DB.Conectar();
            SqlCommand sqlcmd = new SqlCommand("SELECT MedicoXEspecialidad.legajo FROM MedicoXEspecialidad INNER JOIN Medico ON MedicoXEspecialidad.legajo = Medico.legajo INNER JOIN Persona ON Medico.codPersona = Persona.codPersona WHERE (MedicoXEspecialidad.codEspecialidad = 10) AND (Persona.nombre = '@nombre') AND (Persona.apellido = 'nombre')", conexion);

            sqlcmd.Parameters.Add(new SqlParameter("@nombre", nombre));
            sqlcmd.Parameters.Add(new SqlParameter("@apellido", apellido));
            id = sqlcmd.ExecuteNonQuery();
            return id;

        }

        public List<Institucion2> obtenerInstitucion(string nombre)
        {
            SqlConnection conexion = DB.Conectar();
            List<Institucion2> lista = null;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT Convenio_Institucion.idConvenioInstitucion, Institucion.idInstitucion, Institucion.nombreInstitucion, Institucion.nombreResponsable, Institucion.apellidoResponsable, Domicilio.calle, Domicilio.numero, Domicilio.piso, Domicilio.departamento, Barrio.nombre, Institucion.telefono FROM Institucion INNER JOIN Convenio_Institucion ON Institucion.idInstitucion = Convenio_Institucion.idInstitucion INNER JOIN Domicilio ON Institucion.idDomicilio = Domicilio.idDomicilio INNER JOIN Barrio ON Domicilio.idBarrio = Barrio.idBarrio WHERE (Institucion.nombreInstitucion LIKE '" + @nombre + "%')", conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@nombre", nombre));
                SqlDataReader dr = sqlcmd.ExecuteReader();

                lista = new List<Institucion2>();

                while (dr.Read())
                {
                    Institucion2 i = new Institucion2();

                    i.IdConvenioInstitucion = Convert.ToInt32(dr["idConvenioInstitucion"].ToString());
                    i.IdInstitucion = Convert.ToInt32(dr["idInstitucion"].ToString());
                    i.NombreInstitucion = dr["nombreInstitucion"].ToString();
                    i.nombreApellidoResponsable = dr["nombreResponsable"].ToString() + " " + dr["apellidoResponsable"].ToString();
                    i.domicilio = dr["calle"].ToString() + " " + dr["numero"].ToString() + " " + dr["piso"].ToString() + " " + dr["departamento"].ToString();
                    i.barrio = dr["nombre"].ToString();
                    i.Telefono = Convert.ToInt32(dr["telefono"].ToString());

                    lista.Add(i);

                    i = null;
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return lista;
        }


        public int nroOrdenEmergencia(string nombre)
        {
            SqlConnection con = null;
            SqlTransaction tran = null;
            int resultado = 0;
            try
            {
                con = DB.Conectar();
                tran = con.BeginTransaction();
                //string comando = "SELECT nroOrden FROM Atencion_Externa WHERE nroOrden= ( SELECT MAX(nroOrden) FROM Atencion_Externa)";
                string comando = "SELECT MAX(nroOrden) FROM Atencion_Externa";
                List<SqlParameter> listp = new List<SqlParameter>();
                //string id = DB.EjecutarScalar(comando, listp, con, tran);

                string id = DB.EjecutarScalar(comando, listp, con, tran);

                if (!string.IsNullOrEmpty(id))
                {
                    resultado = int.Parse(id);
                }
                else
                    resultado = 1;

            }
            catch (Exception ex)
            {

                throw new Exception("Error" + ex.Message);
            }
            finally
            {

                con.Close();
            }

            return resultado;
        }




        public void incrementaNroOrden()
        {

            SqlConnection conexion = DB.Conectar();
            try
            {
                SqlCommand sqlcmd = new SqlCommand("UPDATE Atencion_Externa SET nroOrden = nroOrden + 1", conexion);
                SqlDataReader dr = sqlcmd.ExecuteReader();
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }

        }

        public bool registrarAtencionExternaInstitucion(String tipoEoU, DateTime fechaHora, int idInstitucion, string motivo, int legajoMedicoGuardia, int codEspMedico, string observaciones, int idEstadoAtencion)
        {
            int orden;
            string nom = "";
            if (tipoEoU == "Emergencia")
            {

                orden = nroOrdenEmergencia(nom);
                orden++;
            }
            else
            {
                incrementaNroOrden();
                orden = 1;


            }


            int res = -20;
            SqlConnection conexion = DB.Conectar();
            try
            {
                SqlCommand sqlcmd = new SqlCommand("INSERT INTO Atencion_Externa(fechaHora, idInstitucion, nroOrden, motivo, legajoMedicoGuardia, codEspecialidadMedicoGuardia, observaciones, idEstadoAtencion) VALUES (@fechaHora, @idInstitucion, @Orden, @motivo, @legajoMedicoGuardia, @codEspMedico, @observaciones, @idEstadoAtencion)", conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@fechaHora", fechaHora));
                sqlcmd.Parameters.Add(new SqlParameter("@idInstitucion", idInstitucion));
                sqlcmd.Parameters.Add(new SqlParameter("@Orden", orden));
                sqlcmd.Parameters.Add(new SqlParameter("@motivo", motivo));
                sqlcmd.Parameters.Add(new SqlParameter("@legajoMedicoGuardia", legajoMedicoGuardia));
                sqlcmd.Parameters.Add(new SqlParameter("@codEspMedico", codEspMedico));
                sqlcmd.Parameters.Add(new SqlParameter("@observaciones", observaciones));
                sqlcmd.Parameters.Add(new SqlParameter("@idEstadoAtencion", idEstadoAtencion));

                res = sqlcmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            { throw ex; }
            finally
            {
                conexion.Close();
            }
            if (res > 0)
                return true;
            else
                return false;

        }

        //public int idInstitucion(string nombre)
        //{
        //    int id;
        //    SqlConnection conexion = DB.Conectar();
        //    SqlCommand sqlcmd = new SqlCommand("SELECT idInstitucion FROM Institucion WHERE nombreInstitucion = @nombre", conexion);
        //    sqlcmd.Parameters.Add(new SqlParameter("@nombre", nombre));
        //    id = sqlcmd.ExecuteNonQuery();
        //    return id;

        //}

        public int prueba(string nombre)
        {
            SqlConnection con = null;
            SqlTransaction tran = null;
            int resultado = 0;
            try
            {
                con = DB.Conectar();
                tran = con.BeginTransaction();
                string comando = "SELECT idInstitucion FROM Institucion WHERE nombreInstitucion = @nombre";
                List<SqlParameter> listp = new List<SqlParameter>();
                listp.Add(new SqlParameter("@nombre", nombre));
                string id = DB.EjecutarScalar(comando, listp, con, tran);

                if (!id.Equals(""))
                {
                    resultado = int.Parse(id.ToString());
                }

            }
            catch (Exception ex)
            {

                throw new Exception("Error" + ex.Message);
            }
            finally
            {

                con.Close();
            }

            return resultado;
        }

        public List<AtencionExterna> mostrarInstitucionesConLlamados(DateTime fechaHoy)
        {
            SqlConnection conexion = DB.Conectar();
            List<AtencionExterna> lista = null;
            try
            {
                String comando = "SELECT Atencion_Externa.codAtencion, Atencion_Externa.idEstadoAtencion, Atencion_Externa.nroOrden, Atencion_Externa.observaciones, Atencion_Externa.fechaHora, "
                               + "Estado_AtencionExterna.nombre, Institucion.nombreInstitucion, Atencion_Externa.motivo, Domicilio.calle, Domicilio.numero, Domicilio.piso, Domicilio.departamento, "
                               + "Barrio.nombre AS Barrio, Institucion.telefono FROM Atencion_Externa INNER JOIN Estado_AtencionExterna "
                               + "ON Atencion_Externa.idEstadoAtencion = Estado_AtencionExterna.codEstado INNER JOIN Institucion ON Atencion_Externa.idInstitucion = Institucion.idInstitucion "
                               + "INNER JOIN Domicilio ON Institucion.idDomicilio = Domicilio.idDomicilio INNER JOIN Barrio ON Domicilio.idBarrio = Barrio.idBarrio "
                               + "WHERE CAST(Atencion_Externa.fechaHora AS DATE) = CAST(@fecha AS DATE) ORDER BY nroOrden ASC";
                SqlCommand sqlcmd = new SqlCommand(comando, conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@fecha", fechaHoy));
              

                SqlDataReader dr = sqlcmd.ExecuteReader();

                lista = new List<AtencionExterna>();

                while (dr.Read())
                {
                    AtencionExterna i = new AtencionExterna();

                    i.codAtencion = Convert.ToInt32(dr["codAtencion"].ToString());
                    i.idEstadoAtencion = Convert.ToInt32(dr["idEstadoAtencion"].ToString());
                    i.nroOrden = Convert.ToInt32(dr["nroOrden"].ToString());
                    i.observaciones = dr["observaciones"].ToString();
                    i.fechaHora = DateTime.Parse(dr["fechaHora"].ToString());
                    i.estado = dr["nombre"].ToString();
                    i.NombreInstitucion = dr["nombreInstitucion"].ToString();
                    i.motivo = dr["motivo"].ToString();
                    i.domicilio = dr["calle"].ToString() + " " + dr["numero"].ToString() + " " + dr["piso"].ToString() + " " + dr["departamento"].ToString();
                    i.barrio = dr["Barrio"].ToString();
                    i.telefono = Convert.ToInt32(dr["telefono"].ToString());
                    i.fechaHoraString = dr["fechaHora"].ToString();
                    lista.Add(i);

                    i = null;
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return lista;
        }

        public List<AtencionExterna> mostrarAfiliadosConLlamados()
        {

            SqlConnection conexion = DB.Conectar();
            List<AtencionExterna> lista = null;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT Atencion_Externa.codAtencion, Atencion_Externa.nroOrden, Atencion_Externa.observaciones, Atencion_Externa.fechaHora, Estado_AtencionExterna.nombre, Persona.nombre AS Nombre, Persona.apellido AS Apellido, Atencion_Externa.motivo, Persona.telefono FROM Atencion_Externa INNER JOIN Estado_AtencionExterna ON Atencion_Externa.idEstadoAtencion = Estado_AtencionExterna.codEstado INNER JOIN Afiliado ON Atencion_Externa.nroAfiliado = Afiliado.nroAfiliado INNER JOIN Persona ON Afiliado.idPersonaPaciente = Persona.codPersona  ORDER BY nroOrden asc", conexion);
                SqlDataReader dr = sqlcmd.ExecuteReader();

                lista = new List<AtencionExterna>();

                while (dr.Read())
                {
                    AtencionExterna i = new AtencionExterna();

                    i.codAtencion = Convert.ToInt32(dr["codAtencion"].ToString());
                    i.nroOrden = Convert.ToInt32(dr["nroOrden"].ToString());
                    i.observaciones = dr["observaciones"].ToString();
                    i.fechaHora = DateTime.Parse(dr["fechaHora"].ToString());
                    i.estado = dr["nombre"].ToString();
                    i.afiliado = dr["Nombre"].ToString() + " " + dr["Apellido"].ToString();
                    i.motivo = dr["motivo"].ToString();
                    //i.domicilio = dr["calle"].ToString() + " " + dr["numero"].ToString() + " " + dr["piso"].ToString() + " " + dr["departamento"].ToString();
                    //i.barrio = dr["Barrio"].ToString();
                    i.telefono = Convert.ToInt64(dr["telefono"].ToString());

                    lista.Add(i);

                    i = null;
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return lista;
        }


        public bool registrarCancelacion(long idAtencion, string motivo)
        {
            int res = -20;
            SqlConnection conexion = DB.Conectar();
            try
            {
                SqlCommand sqlcmd = new SqlCommand("UPDATE Atencion_Externa SET motivoCancelacion = @motivo, idEstadoAtencion = 4 WHERE (codAtencion = @idAtencion) AND idEstadoAtencion=1", conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@idAtencion", idAtencion));
                sqlcmd.Parameters.Add(new SqlParameter("@motivo", motivo));


                res = sqlcmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            { throw ex; }
            finally
            {
                conexion.Close();
            }
            if (res > 0)
                return true;
            else
                return false;
        }

        public int obtenerNroAfiliado(int tipoDoc, int nroDoc)
        {
            SqlConnection conexion = DB.Conectar();
            int nro = 0;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT Afiliado.nroAfiliado FROM Afiliado INNER JOIN Persona ON Afiliado.idPersonaPaciente = Persona.codPersona WHERE (Persona.tipoDocumento = @tipoDoc) AND (Persona.nroDocumento = @nroDoc)", conexion);

                sqlcmd.Parameters.Add(new SqlParameter("@tipoDoc", tipoDoc));
                sqlcmd.Parameters.Add(new SqlParameter("@nroDoc", nroDoc));
                SqlDataReader dr = sqlcmd.ExecuteReader();

                while (dr.Read())
                {

                    nro = Convert.ToInt32(dr["nroAfiliado"].ToString());
                }

            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return nro;
        }

        public int obtenerDatosTitular(int nroAfiliado)
        {
            SqlConnection conexion = DB.Conectar();
            int nroAfiliadoTitular = 0;
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT  nroAfiliadoTitular FROM Afiliacion WHERE (nroAfiliado = @nroAfiliado) AND (esAdherente = 1) ", conexion);

                sqlcmd.Parameters.Add(new SqlParameter("@nroAfiliado", nroAfiliado));

                SqlDataReader dr = sqlcmd.ExecuteReader();



                while (dr.Read())
                {

                    if (dr["nroAfiliadoTitular"] != DBNull.Value)
                    {
                        nroAfiliadoTitular = Convert.ToInt32(dr["nroAfiliadoTitular"].ToString());
                    }
                    else
                    {
                        nroAfiliadoTitular = 0;
                    }



                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }

            return nroAfiliadoTitular;
        }

        public string obtenerNomApeTitular(int nroAfiliadoTitular)
        {
            SqlConnection conexion = DB.Conectar();
            string nomApe = "";
            try
            {
                SqlCommand sqlcmd = new SqlCommand("SELECT Persona.nombre, Persona.apellido FROM Paciente INNER JOIN Persona ON Paciente.idPersona = Persona.codPersona WHERE (Paciente.nroAfiliado = @nroAfiliado) ", conexion);

                sqlcmd.Parameters.Add(new SqlParameter("@nroAfiliado", nroAfiliadoTitular));

                SqlDataReader dr = sqlcmd.ExecuteReader();


                while (dr.Read())
                {


                    nomApe = dr["nombre"].ToString() + " " + dr["apellido"].ToString();


                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
            finally
            {
                conexion.Close();
            }
            return nomApe;
        }

        //agregado por barby
        public bool registrarInicioAtencion(long idLlamada, DateTime horaLlegada)
        {
            bool res = false;
            SqlConnection conexion = DB.Conectar();
            try
            {
                string comando = "UPDATE Atencion_Externa SET horaLlegadaLugar = @horaLlegada, idEstadoAtencion = @idEstado WHERE (codAtencion = @codAt)";
                SqlCommand sqlcmd = new SqlCommand(comando, conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@horaLlegada", horaLlegada));
                sqlcmd.Parameters.Add(new SqlParameter("@idEstado", 2));
                sqlcmd.Parameters.Add(new SqlParameter("@codAt", idLlamada));
                int filas = sqlcmd.ExecuteNonQuery();
                if (filas > 0)
                    res = true;
            }
            catch (Exception ex)
            {

                throw;
            }
            finally
            {
                conexion.Close();
            }
            return res;
        }

        //agregado por barby
        public bool registrarFinAtencion(long idLlamada, DateTime horaFin, string descripAt, string obs)
        {
            bool res = false;
            SqlConnection conexion = DB.Conectar();
            try
            {
                string comando = "UPDATE Atencion_Externa SET horaFinAtencion = @horaFin, descripcionAtencion = @descAt, observaciones = @obs, idEstadoAtencion = @idEst WHERE (codAtencion = @codAt)";
                SqlCommand sqlcmd = new SqlCommand(comando, conexion);
                sqlcmd.Parameters.Add(new SqlParameter("@horaFin", horaFin));
                sqlcmd.Parameters.Add(new SqlParameter("@descAt", descripAt));
                sqlcmd.Parameters.Add(new SqlParameter("@obs", obs));
                sqlcmd.Parameters.Add(new SqlParameter("@idEst", 3));
                sqlcmd.Parameters.Add(new SqlParameter("@codAt", idLlamada));
                int filas = sqlcmd.ExecuteNonQuery();
                if (filas > 0)
                    res = true;
            }
            catch (Exception ex)
            {

                throw;
            }
            finally
            {
                conexion.Close();
            }
            return res;
        }


    }



}



